from flask import Flask, render_template, request

app = Flask(__name__)


"""
执行流程：
对所有的请求定制功能
f1、f2、login【视图函数】、f20、f10
"""


# 请求进来走视图函数之前会先执行f1
# 若有返回值则不再向下继续执行
@app.before_request
def f1():
    print("f1")


@app.before_request
def f2():
    print("f2")


@app.after_request
def f10(response):
    print("f10")
    return response


@app.after_request
def f20(response):
    print("f20")
    return response


@app.route("/login")
def login():
    print("login")
    return render_template("login.html")


if __name__ == "__main__":
    app.run(debug=True)


"""
@app.before_request
def f1():
    print("f1")

等价于

def f1():
    print("f1")
app.before_request(f1)
"""
